|  |

A.9.3 Basic System Features
Mathematica is fundamentally an interpreter which
scans through expressions calling internal code pointed to by the symbol
table entries of heads that it encounters. Any transformation rule—whether given as x -> y
or in a definition—is automatically compiled into a form which allows for
rapid pattern matching. Many different types of patterns are distinguished
and are handled by special code. A form of hashing that takes account of blanks and other features of patterns is used in pattern matching. The internal code associated with pattern matching is approximately 250 pages long. When a large number of definitions are given for a particular symbol, a hash table is automatically built using a version of Dispatch so that appropriate rules can quickly be found.
| |